Historically, customers of a company have entered orders for products and/or services by calling a sales representative or submitting a written order to the company. If the customer later desires to change the order that was already submitted, then the customer has to call the company or submit a new written order. With the advent of electronic data processing the ordering process has become computerized, and a customer can enter an order onto the screen of a computer and then send the order to a company electronically, such as over a computer network. Many companies have developed ordering systems with complex electronic forms and systems to handle orders submitted by customers.
The ordering systems route the completed orders to the appropriate manufacturing and/or distribution facility within the company to fulfill the order. Often orders are fulfilled with a speed that would not have been possible in the precomputer age. If the customer desired to change the electronically submitted order, often the customer would have to call the sales representative or cancel the previous order and submit a new order electronically.
Modem ordering systems can handle complex orders for systems of assembled parts. For example, a customer may order a computer system from a computer manufacturer. Suppose that the customer requests in the order that the computer system be configured for a particular processor, a certain amount of RAM memory, a particular hard disk size, and other features selected by the customer. The order may be based on an ATO (assemble to order) approach, meaning that the ordered item is assembled based on each individual order after the order has been received. In the example of the computer system, the manufacturer receives this order, places it in a queue for manufacturing, assembles the computer system to the specifications requested by the customer, and then ships it to the customer. The manufacturing process is primarily a process of assembling the selected parts and modules into a complete unit, loading the appropriate software, and testing the finished product. Accordingly, manufacturers can now handle complex orders for different configurations and options for systems that are custom configured and assembled for each individual order
When a customer seeks to update or modify an order that was previously submitted, customer may not be aware of the latest status of the order. The customer may have a copy of the order that was previously submitted, but he/she does not readily know where the order is in the company""s ordering system. The customer may submit a modification to the order changing the configuration of an ordered piece of equipment. However, the order may be at a stage where it is currently being fulfilled at a manufacturing or assembly facility, where the requested equipment is in the process of being assembled based on the configuration originally requested. The customer may think the change order request has been applied to the order to change the configuration that was originally suggested, but the assembly process may be completed before the modification moves through the ordering system to match up with the order at the manufacturing facility.
Thus, the equipment ordered by the customer is assembled based on the original order, while the customer is expecting the equipment to be configured based on the modified order. The customer may receive the assembled equipment and discover that it does not meet expectations, because the order was never updated with the new modifications. Alternatively, the modified order is routed to and matched up with the current order, while the equipment is being assembled. The facility assembling the equipment must halt the process, perhaps disassemble all or part of the unit, and reassemble it according to the modified order. The awkward question arises of who should pay for the reassembly, the customer or the company. The customer may receive an unexpected surcharge. The customer may wish to have the option of receiving the originally ordered equipment without a surcharge, rather than receive the modified equipment with a surcharge.
Another problem related to timing arises when the company has not begun assembly of the ordered equipment, when it receives the modified order. When the customer placed the original order, the customer secured a shipment date based on the order date. If the customer modifies the order, the customer then may lose the original ship date. The customer may wish to know that the ship date has been changed, before confirming to go ahead with the modified order. In some situations, the ship date may be more critical to the customer than some relatively minor change in the configuration, and the customer may wish to have the option of retaining the original shipment date without any modification to the order.
Of course, these types of problems can often be resolved by a phone conversation or other direct communication with a sales representative. Generally, the customer prefers to order over a computer network, such as the Internet, at the customer""s convenience, without playing xe2x80x9cphone tagxe2x80x9d when trying to connect with an individual by telephone or experiencing other problems in verbal communication. Likewise, the customer typically prefers to retain the electronic ordering approach when requesting a change to an order. The customer also may desire to know what stage the order is in and also any critical impacts of modifying the order, such as loss of the ship date, surcharges for reassembly of a piece of equipment, unexpected increase in price due to a change in subcomponents in the configuration, and other issues. Preferably, the customer wishes to know these impacts without the burden of direct phone calls or other direct contact with sales representatives.
An additional problem is that the current order may have been modified one or more times before the customer decides to modify it again. This may occur in a variety of ways. The customer may decide that the order needs additional modification due to changing circumstances. The customer may work in a large department where someone else in the department modified the order without timely communicating the change. The customer thus wishes to be aware of the latest modifications to the order and the order""s current configuration before making any additional modifications, which could, in fact, turn out to be unnecessary.
The present invention substantially overcomes the above deficiencies of typical electronic ordering systems. One object of the invention is to provide, on demand, the current status of the order to the customer. The customer can thus view the latest version of the order and also determine basic status issues, such as whether the order is already fulfilled or in the midst of the process of being fulfilled. In different embodiments of the invention, the customer can access an ordering application on the customer""s local computer, or the customer can use the local computer to access the ordering application on an ordering server over a network.
Another object of the invention is to place a hold on the current order, when the customer initiates the query about the order with the intention of changing it. Thus, the customer avoids the problem of the current order beginning fulfillment, such as assembly of a piece of equipment, while the customer is considering and preparing the changes to the order.
A further object of the invention is to provide feedback on adverse impacts of any modifications that the customer wishes to make, such as changes leading to loss of the ship date. The customer receives the feedback, considers it, and then makes an informed decision as to whether to proceed with the change order request. If the customer wishes to proceed, the customer confirms the change order request.
A general object of the invention is to provide an automated ordering and feedback process that minimizes any direct contact with other individuals, such as sales representatives. A further object is to allow for special conditions and exceptional situations, if the processing and feedback for the change order request cannot be handled automatically. In other words, the change to the order preferably should not be fulfilled at all costs or in any circumstances if particular problems arise, such as incurring higher costs to the company.
In one aspect, the invention is a method for modifying, over a network, a current order based on a previously submitted customer order, including receiving a change order request; placing a hold on the current order; providing a current order status; providing a confirmation of the change order request; modifying the current order based on the change order request to provide a modified order; and releasing the hold to enable fulfilling of the modified order. Thus the customer placing the change order request is able to confirm the change order request based on receiving a current order status.
In one embodiment, the method further includes applying one or more additional change order requests to the modified order to provide a plurality of versions of modified orders and maintaining the plurality of versions of modified orders. The customer and others are able to track multiple versions of an order that may be modified one or more times.
In another embodiment, the method further includes providing feedback that indicates changes to the current order and allowing modification to the change order request based on the feedback before confirming the change order request. The customer is thus able to receive feedback about the changes being proposed and make additional changes if so desired.
In a further embodiment, the method includes evaluating a validity of the change order request. In another embodiment, the method includes providing a completion signal that indicates the completion of the modification of the current order based on the change order request.
Another aspect of the invention is directed to a system for modifying, over a network, a current order based on a previously submitted customer order. The system includes a customer computer, a network commerce computer, and an order database server. The customer computer includes an ordering application capable of generating a change order request. The network commerce server includes a change order engine. The order database server includes an order database and an order entry application that is capable of accessing and updating the order database. The ordering application generates a change order request and submits the change order request over the network to the change order engine. The change order engine requests the order entry application to place a hold on the current order status and to provide a current order status to the ordering application. The ordering application provides confirmation of the change order request to the change order engine. The change order engine instructs the order entry application to modify the current order in the order database based on the change order request to provide a modified order and to release the hold so that the modified order is capable of being fulfilled.
In one embodiment, the ordering application provides one or more additional change order requests to the change order engine to provide a plurality of versions of modified orders and the order entry application maintains the plurality of versions of modified orders. In another embodiment, the order entry application provides feedback indicating changes to the current order to the ordering application, and the ordering application allows modification to the change order request and provides the modified change order request to the change order engine. Thus, the system of the invention provides for the customer to receive the current status of the order, as well as feedback on the order, and to confirm the change order request.
In one embodiment, the change order engine evaluates the validity of the change order request. In a further embodiment, the order entry application provides a completion signal to the ordering application that indicates that the order entry application has applied the change order request to the order database.
In another aspect of the invention, an apparatus receives, over a network, a change order request to a current order based on a previously submitted customer order. The apparatus includes a network commerce server and an order database server. The network commerce server includes a change order engine that receives the change order request over the network. The order database includes an order database and an order entry application that is capable of accessing and updating the order database. The change order engine places a hold on the current order and requests the order entry application to determine a current order status of the current order and to provide the current order status over the network. The change order engine receives a confirmation of the change order over the network and submits the change order request to the order entry application to modify the current order in the order database to provide a modified order. The change order engine removes the hold to enable fulfilling the modified order.
In another embodiment, the apparatus further includes an exceptions module that is capable of handling exceptional situations requiring special handling of the change order request. The change order engine determines that the change order request requires special handling, provides the change order request to the exceptions module, and the exceptions module provides the change order request to the order entry application for entry into the order database. Thus special situations are directed to a customer representative without an explicit request from the customer placing the change order request.
In another embodiment, the change order engine further includes an evaluator that evaluates the validity of the change order request. In an additional embodiment, the change order engine receives a modification to the change order request over the network after providing the current order status over the network.
In another aspect, the apparatus includes a customer computer for submitting, over a network, a change order request to a current order based on a previously submitted customer order. The apparatus includes an ordering application executing on the customer computer that displays an order status on a customer computer and is capable of receiving input from the customer and a refresh module executing on the customer computer capable of refreshing the order status. The ordering application places a hold on the current order in response to the input of the change order request. The refresh module refreshes the order status in response to the input of the change order request by the user. The ordering application confirms the change order request and submits the change order request over the network.
In another embodiment, the refresh module receives feedback over the network that indicates changes to the current order. The ordering application displays the feedback on the customer computer and allows modification to the change order request based on the feedback before submitting the change order request over the network. In a further embodiment, the apparatus further includes an evaluator that evaluates a validity of the change order request.
In another aspect, the invention is directed to a method for submitting, over a network, a change order request to a current order based on a previously submitted customer order. The method includes receiving the change order request; transmitting the change order request over the network; requesting a hold on the current order; receiving a current order status over the network; providing a confirmation of the change order request; transmitting the confirmation of the change order request over the network; and receiving a completion signal over the network indicating that the current order has been modified. Accordingly, the customer is able to provide confirmation of the change order request based on the current status of the order and also receive an indication that the change order request has been applied to the current order.
A further embodiment of the invention is directed to a computer program product that includes a computer readable medium having instructions stored thereon for modifying a current order over a network based on a previously submitted customer order. The instructions, when carried out by the computer, cause the computer to receive the change order request; transmit the change order request over the network; request a hold on the current order; receive a current order status over the network; provide a confirmation of the change order request; transmit the confirmation of the change order request over the network; and receive a completion signal over the network indicating that the current order has been modified.
Another embodiment of the invention is directed to a computer program propagated signal product embodied in a propagated medium, having instructions for modifying a current order over a network based on a previously submitted customer order. The instructions, when carried out by a computer, cause the computer to receive the change order request; transmit the change order request over the network; request a hold on the current order; receive a current order status over the network; provide a confirmation of the change order request; transmit the confirmation of the change order request over the network; and receive a completion signal over the network indicating that the current order has been modified.
In another aspect, the apparatus includes an ordering server for submitting, over a network, a change order request to a current order based on a previously submitted customer order. The apparatus includes an ordering application executing on the ordering server that provides an order status over the network and is capable of receiving over the network input specifying a change order request; and a refresh module executing on the ordering server that is capable of refreshing the order status. The ordering application places a hold on the current order in response to the input of the change order request. The refresh module refreshes the order status in response to the input of the change order request. The ordering application confirms the change order request and submits the change order request over the network.
In some embodiments, the techniques of the invention are implemented primarily by computer software. The computer program logic embodiments, which are essentially software, when executed on one or more hardware processors in one or more hardware computing systems cause the processors to perform the techniques outlined above. In other words, these embodiments of the invention are generally manufactured as a computer program stored on a disk, memory, card, or other such media that can be loaded directly into a computer, or downloaded over a network into a computer, to make the device perform according to the operations of the invention.
The features of the invention, as summarized above, may be employed in devices and software manufactured by Cisco Systems, Inc. of San Jose, Cali.